package com.yanzhen.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

import java.time.LocalDateTime;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 *
 * </p>
 *
 * @author 王文龙
 * @since 2023-05-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tbl_apply_event")
public class ApplyEvent implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 申请内容
     */
    private String applyContent;

    /**
     * 申请时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime applyCreatetime;

    /**
     * 审核状态（0：未审核1：审核未通过2：审核通过)
     */
    private Integer checkStatus;

    /**
     * 审核内容
     */
    private String checkContent;

    /**
     * 审核人id
     */
    private Integer checkId;

    /**
     * 活动id
     */
    private Integer activityId;

    /**
     * 审核时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime checkCreatetime;

    /**
     * 申请用户ID
     */
    private Integer applyUserId;

    /**
     * 添加活动对象
     */
    @TableField(exist = false)
    private Activity activity;

    /**
     * 添加用户对象
     */
    @TableField(exist = false)
    private TeamUser teamUser;

    /**
     * 添加管理员对象
     */
    @TableField(exist = false)
    private UserInfo userInfo;

}
